Syntax for the agent definition ​
The language for agent definition is based on the following syntax:
Agenten-Definition : | { AgentDefinition } . | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AgentDefinition : | AGENT " AgentTypeName " [ SimAlgorithms ][ agent-class: " AgentClass " ][ lock-select-results ][ hide-select-results ][ auto-showextremum ][ lock-extremum ][ hide-extremum ][ auto-buildsum ][ lock-buildsum ][ hide-buildsum ][ auto-group ][ grouping-class: " ClassName " grouping-relation: " RelationName " ][ lock-group ][ hide-group ][ calendar: " CalendarString " ][ lock-calendar ][ hide-calendar ][ objects: " AQLTerm " ][ lock-objects ][ hide-objects ][ infotext: " Text " ][ lock-infotext ][ deactivate ][ allowed-modeltype-1 ... n: " ModelTypeName " ]{ Results } . | ||||||||||||
SimAlgorithms : | [ path-analysis ][ volume-analysis ][ wlstatic-analysis ][ wlnonstatic-analysis ] . | ||||||||||||
Results : | { Animation | ExecutionCosts | ExecutionCosts (limited) | Workload | Strain | CycleTime | Frequency | Formula | SumOverAttributes (AVG Sum) | NumberOfChangesInResponsibility (RespChange) } . | ||||
Animation : | ANIMATION name: " ResultName = Title of the Animation Window) " [ hide-name ][ lock-name ][ SimAlgorithms ][ hide-animated ][ lock-animated ]{ ReferencedResult } . | ||||||||||||
ExecutionCosts : | WWECOST BasicResultSettings [ class: " ClassName " ][ hide-class ][ lock-class ][ attribute: " AttributeName " ][ hide-attribute ][ lock-attribute ] . | ||||||||||||
ExecutionCosts (limited) : | UWWECOST BasicResultSettings [ class: " ClassName " ][ hide-class ][ lock-class ][ attribute: " AttributeName " ][ hide-attribute ][ lock-attribute ] . | ||||||||||||
Workload : | WORKLOAD BasicResultSettings [ class: " ClassName " ][ hide-class ][ lock-class ] . | ||||||||||||
Capacity : | STRAIN name: " ResultName " [ hide-name ][ lock-name ] resultscope: DetailSpec [ hide-resultscope ][ lock-resultscope ][ dont-show-result ][ class: " ClassName " ][ hide-class ][ lock-class ] . | ||||||||||||
CycleTime : | CYCLETIME BasicResultSettings . | ||||||||||||
Frequency : | FREQUENCY BasicResultSettings absolute | relative [ hide-mode ][ lock-mode ][ ignore-not-executed-objects ][ hide-ignore ][ lock-ignore ] . | ||||||||||||
Formula : | FORMULA name: " ResultName " [ hide-name ][ lock-name ][ SimAlgorithms ][ expression: " CalcFormula " [ hide-expression ] [ lock-expression ] { ReferencedResult } ] . | ||||||||||||
SumOverAttributes : | AVGSUM BasicResultSettings [ class: " ClassName " ][ lock-class ][ hide-class ][ attribute: " AttributeName " attribute-type: numeric | time ][ lock-attribute ][ hide-attribute ] . | ||||||||||||
NumberOfChangesInResponsibility : | RESPCHANGE BasicResultSettings [ class: " ClassName " ][ lock-class ][ hide-class ] . | ||||||||||||
BasicResultSettings : | name: " ResultName " [ hide-name ][ lock-name ][ SimAlgorithms ][ hide-algorithms ] resultscope: DetailSpec [ hide-resultscope ][ lock-resultscope ][ dont-show-result ][ hide-show-result ][ lock-show-result ][ history-mem | history-disk ][ hide-history-mem ][ lock-history-mem ][ hide-history-disk ][ lock-history-disk ][ history-file: " FileName " ][ dont-show-history ][ hide-show-history ][ lock-show-history ] . | ||||||||||||
DetailSpec : | process | mainobjects | allobjects . | |||||||||||
ReferencedResult : | OBSERVED " ResultName " . | ||||||||||||
CalcFormula : | FormulaElement [ BasicOperator CalcFormula ] . | ||||||||||||
FormulaElement : | \" ResultName\" | Number | AdvancedOperator1( CalcFormula ) | AdvancedOperator2( CalcFormula, CalcFormula ) | cond( Condition, CalcFormula, CalcFormula ) . | |||||||||
BasicOperator : | + | - | * | / . | ||||||||||
AdvancedOperator1 : | abs | acos | asin | atan | cos | cosh | exp | log | log10 | sin | sinh | tan | tanh | sqrt . |
AdvancedOperator2 : | max | min | pow . |
All expressions occurring in agent definition are explained In the following. It is noted for each expression, whether it is obligatory or optional in an agent definition.